When computer software is deployed to a new customer site, or when existing software is upgraded at a customer site, several issues may arise. One issue is determining what devices are included in the deployment to enable the software to perform according to customer or vendor specifications. Suitable examples of devices in this context can include computer desktops or servers and networking infrastructure. Having identified what devices are included, other issues include determining how many of the above devices are to be included, and/or determining what performance characteristics should be specified for these devices.
Modeling techniques based on simulation and other quantitative methods are known for analyzing the performance of software deployments. However, conventional modeling techniques have several shortcomings that can limit their applicability in some circumstances. First, persons using conventional modeling techniques may repeat the simulation each time any device configuration is adjusted to evaluate the effect of the change, and then repeat this process until some goal is achieved. However, if each repetition of the simulation is time consuming, then repeating each simulation may unnecessarily prolong the overall modeling process.
Also, persons using conventional modeling techniques may be asked to provide relatively detailed technical information on the devices included as part of a proposed performance scenario. Thus, these persons may be technically sophisticated, and their time is valued accordingly. If the overall modeling process is long, then it consumes more of their valuable time, and the cost of the modeling process increases. Also, if only these technically sophisticated persons can fully utilize the modeling techniques, then an enterprise investing in these modeling techniques may be unnecessarily restricted in realizing return from this investment.
The teachings herein address the above and other shortcomings in conventional techniques for modeling software deployments.